4.4 Concluding Remarks on Evolution
37
4.3
Evolutionary Computing
Evolutionary computation (EC) is typically fairly informally defined as the field of
computational systems that get inspiration and ideas from natural (Darwinian) evo-
lution (cf. Sects. 4.1 and 4.1.2). One of the most important types of evolutionary
computation is the genetic algorithm (GA), which is a type of search and opti-
mization based on the mechanisms—albeit rather simplified—of genetics and nat-
ural selection. Each candidate solution is encoded as a numerical string, usually
binary (of course, unless an analog computer is used, ultimately even a real-valued
string is encoded in binary form for processing on a digital computer). This string
is called the chromosome. A large number of candidate solutions are then “mated”:
in other words, pairs of parents are selected (typically randomly) and the two chro-
mosomes are mixed using operations inspired by those taking place in living cells
(cf. Sect. 14.7), such as recombination (crossover). Random mutations to individual
chromosomes are usually also allowed. The offspring are then evaluated according
to some appropriate fitness criterion and mapped onto a numerical scale. Offspring
with fitness below the threshold are eliminated. In some genetic algorithms, only
the surviving offspring pass on to the next generation and all parents die; in others,
the parents are also evaluated and retained if their fitness exceeds the threshold. The
survivors then undergo another round of randomization and evaluation, and so on
(Fig. 4.2). The cycles continue until a satisfactory solution is reached. The technique
is particularly valuable for multiobjective optimization (MOO). Currently, there is
much activity in the field, albeit dominated by heuristic developments. It is clear that
there are many degrees of freedom available, and it would be impracticable in most
cases to systematically investigate them all. A very promising trend is to allow more
flexibility in the individual steps; ultimately, the algorithm should be able to develop
itself under the constraint of some externally imposed fitness criterion. There is also
a trend to more intensively apply some of the more recent discoveries in molecu-
lar biology to evolutionary computation, especially those regarding the epigenetic
features known to control genome organization (Banzhaf et al. 2006). An attractive
extension of conventional genetic algorithms is to introduce interactive selection of
survivors by a human user. 25
4.4
Concluding Remarks on Evolution
Notwithstanding Dobzhansky’s often-cited assertion that “nothing in biology makes
sense except in the light of evolution”, the present theory of evolution, in the words
of Yapp (1958), “though an admirable working hypothesis, still leaves the most
important things unexplained”. As he remarks, it “accounts very satisfactorily in
terms of Mendelian inheritance, mutation, isolation, and selection, aided perhaps
by drift, for evolution within the genus, and brings together reasonably well a wide
25 Interactive genetic algorithms; e.g., Brintrup et al. (2006).